using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using ScenarioFramework.Modules.DM.DataBase;
using ScenarioFramework.Modules.DM.DataModel;

namespace ACEMPortal.Forms
{
	/// <summary>
	/// Summary description for DocumentHistory.
	/// </summary>
	public partial class DocumentHistory : System.Web.UI.Page
	{
		private string sDocumentVersion=string.Empty;

		protected void Page_Load(object sender, System.EventArgs e)
		{
			
			// Put user code to initialize the page here
			if ( Page.IsPostBack ) 
			{
				sDocumentVersion = (string)Session["DocumentVersion"];
			}
			else
			{
				if ( Request.QueryString["DocumentVersion"] != null )
				{
					Session["DocumentVersion"] = Request.QueryString["DocumentVersion"];
					sDocumentVersion = Request.QueryString["DocumentVersion"];
				}

				if(Request.QueryString["DocumentId"] != null)
				{
					string sDocumentId = Request.QueryString["DocumentId"];
					DocumentManagerDBHelper dmDBHelper = new DocumentManagerDBHelper();
					XMLDocumentInstance document = dmDBHelper.GetDocumentInstance( sDocumentId );

					if ( sDocumentVersion == string.Empty ) 
					{
						sDocumentVersion = document.XMLDocumentVersions.GetLastVersion().Id;
						Session["DocumentVersion"] = sDocumentVersion ;
					}

					Session["DocumentInstance"] = document;

				}
				else
				{
					XMLDocumentInstance document = (XMLDocumentInstance)Session["DocumentInstance"];

					if ( sDocumentVersion == string.Empty ) 
					{
						sDocumentVersion = document.XMLDocumentVersions.GetLastVersion().Id;
						Session["DocumentVersion"] = sDocumentVersion ;
					}

				}
			}
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{    
		}
		#endregion
	}
}
